From 33e7a7898faf66562c8591c656da4f1fdfcfa87b Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 4 Nov 2016 02:37:11 +0100 Subject: [PATCH] API: gdk: Remove gdk_window_set_override_redirect() When you want an override-redirect window, you create it that way. Changing that behavior is not supported anywhere (but on X of course). --- docs/reference/gdk/gdk4-sections.txt | 1 - gdk/broadway/gdkwindow-broadway.c | 8 ------- gdk/gdkwindow.c | 27 ++--------------------- gdk/gdkwindow.h | 3 --- gdk/gdkwindowimpl.h | 2 -- gdk/mir/gdkmirwindowimpl.c | 8 ------- gdk/quartz/gdkwindow-quartz.c | 8 ------- gdk/wayland/gdkwindow-wayland.c | 7 ------ gdk/win32/gdkwindow-win32.c | 32 ++++------------------------ gdk/win32/gdkwindow-win32.h | 1 - gdk/x11/gdkwindow-x11.c | 23 -------------------- 11 files changed, 6 insertions(+), 114 deletions(-) diff --git a/docs/reference/gdk/gdk4-sections.txt b/docs/reference/gdk/gdk4-sections.txt index 7f86bfe14c..0441f3f8b4 100644 --- a/docs/reference/gdk/gdk4-sections.txt +++ b/docs/reference/gdk/gdk4-sections.txt @@ -358,7 +358,6 @@ gdk_window_get_frame_clock gdk_window_set_user_data -gdk_window_set_override_redirect gdk_window_set_accept_focus gdk_window_get_accept_focus gdk_window_set_focus_on_map diff --git a/gdk/broadway/gdkwindow-broadway.c b/gdk/broadway/gdkwindow-broadway.c index 6fb030038b..28e57336e0 100644 --- a/gdk/broadway/gdkwindow-broadway.c +++ b/gdk/broadway/gdkwindow-broadway.c @@ -785,13 +785,6 @@ gdk_window_broadway_input_shape_combine_region (GdkWindow *window, { } - -static void -gdk_broadway_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ -} - static void gdk_broadway_window_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -1580,7 +1573,6 @@ gdk_window_impl_broadway_class_init (GdkWindowImplBroadwayClass *klass) impl_class->set_startup_id = gdk_broadway_window_set_startup_id; impl_class->set_transient_for = gdk_broadway_window_set_transient_for; impl_class->get_frame_extents = gdk_broadway_window_get_frame_extents; - impl_class->set_override_redirect = gdk_broadway_window_set_override_redirect; impl_class->set_accept_focus = gdk_broadway_window_set_accept_focus; impl_class->set_focus_on_map = gdk_broadway_window_set_focus_on_map; impl_class->set_icon_list = gdk_broadway_window_set_icon_list; diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index e53d3a75b1..3c57b1071b 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -9144,9 +9144,8 @@ gdk_window_set_urgency_hint (GdkWindow *window, * gdk_window_move_resize(). * * Note that on X11, this effect has no effect on windows - * of type %GDK_WINDOW_TEMP or windows where override redirect - * has been turned on via gdk_window_set_override_redirect() - * since these windows are not resizable by the user. + * of type %GDK_WINDOW_TEMP since these windows are not resizable + * by the user. * * Since you can’t count on the windowing system doing the * constraints for programmatic resizes, you should generally @@ -9292,28 +9291,6 @@ gdk_window_get_frame_extents (GdkWindow *window, GDK_WINDOW_IMPL_GET_CLASS (window->impl)->get_frame_extents (window, rect); } -/** - * gdk_window_set_override_redirect: - * @window: a toplevel #GdkWindow - * @override_redirect: %TRUE if window should be override redirect - * - * An override redirect window is not under the control of the window manager. - * This means it won’t have a titlebar, won’t be minimizable, etc. - it will - * be entirely under the control of the application. The window manager - * can’t see the override redirect window at all. - * - * Override redirect should only be used for short-lived temporary - * windows, such as popup menus. #GtkMenu uses an override redirect - * window in its implementation, for example. - * - **/ -void -gdk_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ - GDK_WINDOW_IMPL_GET_CLASS (window->impl)->set_override_redirect (window, override_redirect); -} - /** * gdk_window_set_accept_focus: * @window: a toplevel #GdkWindow diff --git a/gdk/gdkwindow.h b/gdk/gdkwindow.h index 08d7338e00..9d4535b62e 100644 --- a/gdk/gdkwindow.h +++ b/gdk/gdkwindow.h @@ -538,9 +538,6 @@ GDK_AVAILABLE_IN_ALL void gdk_window_set_user_data (GdkWindow *window, gpointer user_data); GDK_AVAILABLE_IN_ALL -void gdk_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect); -GDK_AVAILABLE_IN_ALL gboolean gdk_window_get_accept_focus (GdkWindow *window); GDK_AVAILABLE_IN_ALL void gdk_window_set_accept_focus (GdkWindow *window, diff --git a/gdk/gdkwindowimpl.h b/gdk/gdkwindowimpl.h index 2ebf434ed7..680997d345 100644 --- a/gdk/gdkwindowimpl.h +++ b/gdk/gdkwindowimpl.h @@ -186,8 +186,6 @@ struct _GdkWindowImplClass GdkWindow *parent); void (* get_frame_extents) (GdkWindow *window, GdkRectangle *rect); - void (* set_override_redirect) (GdkWindow *window, - gboolean override_redirect); void (* set_accept_focus) (GdkWindow *window, gboolean accept_focus); void (* set_focus_on_map) (GdkWindow *window, diff --git a/gdk/mir/gdkmirwindowimpl.c b/gdk/mir/gdkmirwindowimpl.c index 03dd4df377..48ae34d3f9 100644 --- a/gdk/mir/gdkmirwindowimpl.c +++ b/gdk/mir/gdkmirwindowimpl.c @@ -1174,13 +1174,6 @@ gdk_mir_window_impl_get_frame_extents (GdkWindow *window, //g_printerr ("gdk_mir_window_impl_get_frame_extents window=%p\n", window); } -static void -gdk_mir_window_impl_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ - //g_printerr ("gdk_mir_window_impl_set_override_redirect window=%p\n", window); -} - static void gdk_mir_window_impl_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -1805,7 +1798,6 @@ gdk_mir_window_impl_class_init (GdkMirWindowImplClass *klass) impl_class->set_startup_id = gdk_mir_window_impl_set_startup_id; impl_class->set_transient_for = gdk_mir_window_impl_set_transient_for; impl_class->get_frame_extents = gdk_mir_window_impl_get_frame_extents; - impl_class->set_override_redirect = gdk_mir_window_impl_set_override_redirect; impl_class->set_accept_focus = gdk_mir_window_impl_set_accept_focus; impl_class->set_focus_on_map = gdk_mir_window_impl_set_focus_on_map; impl_class->set_icon_list = gdk_mir_window_impl_set_icon_list; diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c index 6bdc1fa25d..c5f536742e 100644 --- a/gdk/quartz/gdkwindow-quartz.c +++ b/gdk/quartz/gdkwindow-quartz.c @@ -1966,13 +1966,6 @@ gdk_window_quartz_input_shape_combine_region (GdkWindow *window, /* FIXME: Implement */ } -static void -gdk_quartz_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ - /* FIXME: Implement */ -} - static void gdk_quartz_window_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -2893,7 +2886,6 @@ gdk_window_impl_quartz_class_init (GdkWindowImplQuartzClass *klass) impl_class->set_startup_id = gdk_quartz_window_set_startup_id; impl_class->set_transient_for = gdk_quartz_window_set_transient_for; impl_class->get_frame_extents = gdk_quartz_window_get_frame_extents; - impl_class->set_override_redirect = gdk_quartz_window_set_override_redirect; impl_class->set_accept_focus = gdk_quartz_window_set_accept_focus; impl_class->set_focus_on_map = gdk_quartz_window_set_focus_on_map; impl_class->set_icon_list = gdk_quartz_window_set_icon_list; diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c index c6c52a71b9..08af04c9b8 100644 --- a/gdk/wayland/gdkwindow-wayland.c +++ b/gdk/wayland/gdkwindow-wayland.c @@ -3102,12 +3102,6 @@ gdk_wayland_window_get_frame_extents (GdkWindow *window, }; } -static void -gdk_wayland_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ -} - static void gdk_wayland_window_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -3627,7 +3621,6 @@ _gdk_window_impl_wayland_class_init (GdkWindowImplWaylandClass *klass) impl_class->set_startup_id = gdk_wayland_window_set_startup_id; impl_class->set_transient_for = gdk_wayland_window_set_transient_for; impl_class->get_frame_extents = gdk_wayland_window_get_frame_extents; - impl_class->set_override_redirect = gdk_wayland_window_set_override_redirect; impl_class->set_accept_focus = gdk_wayland_window_set_accept_focus; impl_class->set_focus_on_map = gdk_wayland_window_set_focus_on_map; impl_class->set_icon_list = gdk_wayland_window_set_icon_list; diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c index 9069b4c306..bfd9c21f52 100644 --- a/gdk/win32/gdkwindow-win32.c +++ b/gdk/win32/gdkwindow-win32.c @@ -702,7 +702,6 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display, GdkWin32Display *display_win32; const gchar *title; wchar_t *wtitle; - gboolean override_redirect; gint window_width, window_height; gint offset_x = 0, offset_y = 0; gint x, y, real_x = 0, real_y = 0; @@ -732,16 +731,10 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display, g_assert (attributes->y == window->y); remaining_mask &= ~GDK_WA_Y; } - override_redirect = FALSE; - if ((attributes_mask & GDK_WA_NOREDIR) != 0) - { - override_redirect = !!attributes->override_redirect; - remaining_mask &= ~GDK_WA_NOREDIR; - } - if ((remaining_mask & ~(GDK_WA_TITLE|GDK_WA_TYPE_HINT)) != 0) + if ((remaining_mask & ~(GDK_WA_NOREDIR|GDK_WA_TITLE|GDK_WA_TYPE_HINT)) != 0) g_warning ("_gdk_window_impl_new: uexpected attribute 0x%X", - remaining_mask & ~(GDK_WA_TITLE|GDK_WA_TYPE_HINT)); + remaining_mask & ~(GDK_WA_NOREDIR|GDK_WA_TITLE|GDK_WA_TYPE_HINT)); hparent = GDK_WINDOW_HWND (real_parent); @@ -749,7 +742,6 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display, impl->wrapper = GDK_WINDOW (window); window->impl = GDK_WINDOW_IMPL (impl); - impl->override_redirect = override_redirect; impl->layered = FALSE; impl->layered_opacity = 1.0; @@ -1261,8 +1253,7 @@ show_window_internal (GdkWindow *window, window_impl = GDK_WINDOW_IMPL_WIN32 (window->impl); if (!already_mapped && GDK_WINDOW_TYPE (window) == GDK_WINDOW_TOPLEVEL && - (window_impl->hint_flags & (GDK_HINT_POS | GDK_HINT_USER_POS)) == 0 && - !window_impl->override_redirect) + (window_impl->hint_flags & (GDK_HINT_POS | GDK_HINT_USER_POS)) == 0) { gboolean center = FALSE; RECT window_rect, center_on_rect; @@ -1322,8 +1313,7 @@ show_window_internal (GdkWindow *window, } if (!already_mapped && - GDK_WINDOW_TYPE (window) == GDK_WINDOW_TOPLEVEL && - !window_impl->override_redirect) + GDK_WINDOW_TYPE (window) == GDK_WINDOW_TOPLEVEL) { /* Ensure new windows are fully onscreen */ RECT window_rect; @@ -2466,19 +2456,6 @@ do_shape_combine_region (GdkWindow *window, SetWindowRgn (GDK_WINDOW_HWND (window), hrgn, TRUE); } -static void -gdk_win32_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ - GdkWindowImplWin32 *window_impl; - - g_return_if_fail (GDK_IS_WINDOW (window)); - - window_impl = GDK_WINDOW_IMPL_WIN32 (window->impl); - - window_impl->override_redirect = !!override_redirect; -} - static void gdk_win32_window_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -6128,7 +6105,6 @@ gdk_window_impl_win32_class_init (GdkWindowImplWin32Class *klass) //impl_class->set_startup_id = gdk_x11_window_set_startup_id; impl_class->set_transient_for = gdk_win32_window_set_transient_for; impl_class->get_frame_extents = gdk_win32_window_get_frame_extents; - impl_class->set_override_redirect = gdk_win32_window_set_override_redirect; impl_class->set_accept_focus = gdk_win32_window_set_accept_focus; impl_class->set_focus_on_map = gdk_win32_window_set_focus_on_map; impl_class->set_icon_list = gdk_win32_window_set_icon_list; diff --git a/gdk/win32/gdkwindow-win32.h b/gdk/win32/gdkwindow-win32.h index de18c45141..6e5f3d8405 100644 --- a/gdk/win32/gdkwindow-win32.h +++ b/gdk/win32/gdkwindow-win32.h @@ -273,7 +273,6 @@ struct _GdkWindowImplWin32 guint zero_margins : 1; guint no_bg : 1; guint inhibit_configure : 1; - guint override_redirect : 1; /* Set to TRUE if window is using true layered mode adjustments * via UpdateLayeredWindow(). diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index 19f8bcf388..981405da69 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -3148,28 +3148,6 @@ gdk_window_x11_input_shape_combine_region (GdkWindow *window, #endif } - -static void -gdk_x11_window_set_override_redirect (GdkWindow *window, - gboolean override_redirect) -{ - XSetWindowAttributes attr; - - if (!GDK_WINDOW_DESTROYED (window) && - WINDOW_IS_TOPLEVEL_OR_FOREIGN (window)) - { - GdkWindowImplX11 *impl = GDK_WINDOW_IMPL_X11 (window->impl); - - attr.override_redirect = (override_redirect? True : False); - XChangeWindowAttributes (GDK_WINDOW_XDISPLAY (window), - GDK_WINDOW_XID (window), - CWOverrideRedirect, - &attr); - - impl->override_redirect = attr.override_redirect; - } -} - static void gdk_x11_window_set_accept_focus (GdkWindow *window, gboolean accept_focus) @@ -5419,7 +5397,6 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass) impl_class->set_startup_id = gdk_x11_window_set_startup_id; impl_class->set_transient_for = gdk_x11_window_set_transient_for; impl_class->get_frame_extents = gdk_x11_window_get_frame_extents; - impl_class->set_override_redirect = gdk_x11_window_set_override_redirect; impl_class->set_accept_focus = gdk_x11_window_set_accept_focus; impl_class->set_focus_on_map = gdk_x11_window_set_focus_on_map; impl_class->set_icon_list = gdk_x11_window_set_icon_list; -- 2.30.2